<template>
	<slot :controller="controller" :store="store" :model="model">
    <AppForm
		ref="editForm"
        v-bind="$attrs"
		:id="controlID"
		:name="model.codeName"
		:class="classNames"
		:data="store.data"
		>
        <AppAnchor v-if="store.anchorData.length > 0" :controlID="controlID" :anchorData="store.anchorData" />
        <div class="control-content app-control-form__content">
			<AppRow :layoutOpts="{selfLayout: 'TABLE_24COL',}">
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="文本"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitemEditor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppInput
				                            v-bind="{ editorType: 'TEXTBOX', }"
				                            type="text"
				                            style=""
				                            name="formitem"
				                            :isDebounce="false"
				                            :disabled="store.detailModel.formitem.disabled"
				                            :value="store.data.formitem"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem1.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem1"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem1"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="多行"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem1.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem1Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppInput
				                            v-bind="{ editorType: 'TEXTAREA', }"
				                            type="textarea"
				                            style=""
				                            name="formitem1"
				                            :isDebounce="false"
				                            :disabled="store.detailModel.formitem1.disabled"
				                            :value="store.data.formitem1"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem2.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem2"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem2"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="开关"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem2.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem2Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppSwitch
				                            v-bind="{ editorType: 'SWITCH', }"
				                            style=""
				                            name="formitem2"
				                            :disabled="store.detailModel.formitem2.disabled"
				                            :value="store.data.formitem2"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem3.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem3"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem3"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="步进器"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem3.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem3Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppStepper
				                            v-bind="{ editorType: 'STEPPER', }"
				                            style=""
				                            name="formitem3"
				                            :disabled="store.detailModel.formitem3.disabled"
				                            :value="Number(store.data.formitem3)"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem4.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem4"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem4"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="滑动"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem4.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem4Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppSlider
				                            v-bind="{ editorType: 'SLIDER', }"
				                            style=""
				                            name="formitem4"
				                            :disabled="store.detailModel.formitem4.disabled"
				                            :value="Number(store.data.formitem4)"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem5.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem5"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem5"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="评分"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem5.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem5Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppRating
				                            v-bind="{ editorType: 'RATING', }"
				                            :context="store.context"
				                            :viewParams="store.viewParams"
				                            style=""
				                            name="formitem5"
				                            :disabled="store.detailModel.formitem5.disabled"
				                            :data="store.data"
				                            :value="Number(store.data.formitem5)"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem6.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem6"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem6"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="单选列表"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem6.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem6Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppRadioGroup
				                            codeListTag="Sample__OrderType"
				                            codeListType="STATIC"
				                            
				                            v-bind="{ editorType: 'RADIOBUTTONLIST', }"
				                            :context="store.context"
				                            :viewParams="store.viewParams"
				                            style=""
				                            name="formitem6"
				                            :disabled="store.detailModel.formitem6.disabled"
				                            :data="store.data"
				                            :value="store.data.formitem6"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem7.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem7"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem7"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="图片"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem7.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem7Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppUpload
				                            v-bind="{ editorType: 'PICTURE', }"
				                            listType="picture-card"
				                            accept='image/*'
				                            style=""
				                            name="formitem7"
				                            :disabled="store.detailModel.formitem7.disabled"
				                            :data="store.data"
				                            :value="store.data.formitem7"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem9.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem9"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem9"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="密码"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem9.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem9Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppInput
				                            v-bind="{ editorType: 'PASSWORD', }"
				                            type="password"
				                            style=""
				                            name="formitem9"
				                            :isDebounce="false"
				                            :disabled="store.detailModel.formitem9.disabled"
				                            :value="store.data.formitem9"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem12.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem12"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem12"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="地址框"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem12.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem12Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppDataPicker
				                            :context="store.context"
				                            :viewParams="store.viewParams"
				                            deMajorField="ibizsample0003name"
				                            deKeyField="ibizsample0003id"
				                            pickUpView="IBIZSample0003PickupView"
				                            deCodeName="IBIZSAMPLE0003"
				                            :acParams="{ serviceName: 'IBIZSample0003', interfaceName: 'FetchDefault' }"
				                            v-bind="{ editorType: 'ADDRESSPICKUP', PICKUPVIEW: 'TRUE' }"
				                            :multiple="true"
				                            :isDropdown="true"
				                            style=""
				                            name="formitem12"
				                            :disabled="store.detailModel.formitem12.disabled"
				                            :data="store.data"
				                            :value="store.data.formitem12"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem8.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem8"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem8"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="数据选择"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem8.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem8Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppDataPicker
				                            valueItem="formitem2"
				                            :context="store.context"
				                            :viewParams="store.viewParams"
				                            deMajorField="ibizsample0003name"
				                            deKeyField="ibizsample0003id"
				                            pickUpView="IBIZSample0003PickupView"
				                            deCodeName="IBIZSAMPLE0003"
				                            :acParams="{ serviceName: 'IBIZSample0003', interfaceName: 'FetchDefault' }"
				                            v-bind="{ editorType: 'PICKER', AC: 'TRUE', PICKUPVIEW: 'TRUE' }"
				                            style=""
				                            name="formitem8"
				                            :disabled="store.detailModel.formitem8.disabled"
				                            :data="store.data"
				                            :value="store.data.formitem8"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem10.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem10"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem10"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="数值"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem10.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem10Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppInput
				                            v-bind="{ editorType: 'NUMBER', }"
				                            type="number"
				                            style=""
				                            name="formitem10"
				                            :isDebounce="false"
				                            :disabled="store.detailModel.formitem10.disabled"
				                            :value="store.data.formitem10"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem11.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem11"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem11"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="下拉（多）"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem11.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem11Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppDropdownList
				                            codeListTag="Sample__OrderType"
				                            codeListType="STATIC"
				                            v-bind="{ editorType: 'MDROPDOWNLIST', }"
				                            :multiple="true"
				                            :context="store.context"
				                            :viewParams="store.viewParams"
				                            style=""
				                            name="formitem11"
				                            :disabled="store.detailModel.formitem11.disabled"
				                            :value="store.data.formitem11"
				                            :data="store.data"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        /> 
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem13.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem13"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem13"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="列表框（选择）"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem13.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem13Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppListBox
				                            :deMajorField="model.majorPSAppDEField"
				                            :deKeyField="model.keyPSAppDEField"
				                            v-bind="{ editorType: 'LISTBOXPICKUP', PICKUPVIEW: 'TRUE' }"
				                            :context="store.context"
				                            :viewParams="store.viewParams"
				                            style=""
				                            name="formitem13"
				                            :disabled="store.detailModel.formitem13.disabled"
				                            :data="store.data"
				                            :value="store.data.formitem13"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem14.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem14"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem14"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="ip地址"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem14.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem14Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppInputIp
				                            v-bind="{ editorType: 'IPADDRESSTEXTBOX', PICKUPVIEW: 'TRUE' }"
				                            style=""
				                            name="formitem14"
				                            :disabled="store.detailModel.formitem14.disabled"
				                            :value="store.data.formitem14"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        /> 
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem18.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem18"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem18"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="时间"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem18.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem18Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppDatePicker
				                            v-bind="{ editorType: 'DATEPICKER', TIMEFMT: 'YYYY-MM-DD HH:mm:ss' }"
				                            format="YYYY-MM-DD HH:mm:ss"
				                            dateType="dateTime"
				                            name="formitem18"
				                            :disabled="store.detailModel.formitem18.disabled"
				                            :value="store.data.formitem18"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem21.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem21"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem21"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="选项框"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem21.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem21Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppCheckbox
				                            v-bind="{ editorType: 'CHECKBOX', }"
				                            style=""
				                            name="formitem21"
				                            :disabled="store.detailModel.formitem21.disabled"
				                            :value="store.data.formitem21"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        /> 
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem20.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem20"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem20"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="选项框"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem20.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem20Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppCheckboxList
				                            v-bind="{ editorType: 'CHECKBOXLIST', }"
				                            codeListTag="Sample__OrderType"
				                            codeListType="STATIC"
				                            :codeItemValueNumber="false"
				                            :context="store.context"
				                            :viewParams="store.viewParams"
				                            style=""
				                            name="formitem20"
				                            :disabled="store.detailModel.formitem20.disabled"
				                            :data="store.data"
				                            :value="store.data.formitem20"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        /> 
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem19.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem19"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem19"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="代码编辑器"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem19.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem19Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem17.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem17"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem17"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="下拉列表"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem17.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem17Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppDropdownList
				                            codeListTag="Sample__OrderType"
				                            codeListType="STATIC"
				                            v-bind="{ editorType: 'DROPDOWNLIST', }"
				                            :multiple="false"
				                            :context="store.context"
				                            :viewParams="store.viewParams"
				                            style=""
				                            name="formitem17"
				                            :disabled="store.detailModel.formitem17.disabled"
				                            :value="store.data.formitem17"
				                            :data="store.data"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        /> 
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem16.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem16"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem16"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="文件控件"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem16.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem16Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppUpload
				                            v-bind="{ editorType: 'FILEUPLOADER', }"
				                            style=""
				                            name="formitem16"
				                            :disabled="store.detailModel.formitem16.disabled"
				                            :data="store.data"
				                            :value="store.data.formitem16"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
				<AppCol
				    noRoot
				    :visible="store.detailModel.formitem15.visible"
				    :layoutOpts="{parentLayout: 'TABLE_24COL',colMD: 24,}">
				    <template v-slot:default="{ slotStyle, slotClass }">
				        <slot name="formitem15"  :controller="controller" :store="store" :model="model" :slotClass="slotClass" :slotStyle="slotStyle" :actions="{ handleComponentAction }">
				            <AppFormItem 
				                name="formitem15"
				                :slotStyle="slotStyle"
				                :slotClass="slotClass" 
				                label="html编辑器"
				                labelPos="LEFT" 
				                :labelWidth="130" 
				                :showLabel="true"
				                :enableAnchor="false" 
				                :rules="store.detailModel.formitem15.valueRule"
				                :emptyCaption="false">
				                <div class="form-editor-container">
				                    <slot name="formitem15Editor"  :controller="controller" :store="store" :model="model" :actions="{ handleComponentAction }">
				                        <AppRichText
				                            v-bind="{ editorType: 'HTMLEDITOR', }"
				                            :context="store.context"
				                            :viewParams="store.viewParams"
				                            style=""
				                            name="formitem15"
				                            :disabled="store.detailModel.formitem15.disabled"
				                            :value="store.data.formitem15"
				                            :data="store.data"
				                            @component-action="(actionParam: IEvent<string>) => { handleComponentAction(controller, actionParam) }"
				                        />
				                    </slot>
				                </div>
				            </AppFormItem>
				        </slot>
				    </template>
				</AppCol>
			</AppRow>
        </div>
    </AppForm>
	</slot>
</template>
<script setup lang="ts">
// 基于template/src/widgets/{{appEntities}}/{{ctrls@FORM}}-form/{{spinalCase ctrl.codeName}}-form-base.vue.hbs生成

import { Ref } from 'vue';
import { AppAnchor } from '@components/common/anchor';
import { AppCol } from '@/components/common/col';
import { AppRow } from '@/components/common/row';
import { AppForm, AppFormPage, AppFormGroup, AppFormTabPage, AppFormItem, AppFormButton, AppFormDruipart, AppFormIframe, AppFormRaw, AppFormMdCtrl, AppFormMdCtrlRepeater } from '@components/widgets/form';
import { IEvent, EditFormActionType, IEditFormAbility, IEditFormStore, IParam } from '@/core';
import { useProps, useBasic, useAction, useController } from './usr-0202935247-form-hook';

const editForm: Ref = ref(null);

// 输入参数
const props = defineProps(useProps());

// 基础数据
const { controlID, getClassNames, model ,useNavParamsBind, useEventBind, handleActionClick, handleComponentAction } = useBasic(props);

const emit = defineEmits<{
    (event: 'ctrl-action', name: string, action: EditFormActionType, data: IParam[]): void;
    (event: 'ctrl-init', name: string, data: IEditFormAbility): void;
    (event: 'ctrl-destroy', name: string, data: IParam): void;
}>();

const evt = useEventBind(emit);
//  部件样式名
const classNames = computed(() => {
  return getClassNames(props);
});

//  表单控制器
const controller = useController(props, evt, { controlID, editForm });

useNavParamsBind(controller, props);

const store: IEditFormStore = controller.getStore();

const ctrlService = controller.getCtrlService();

onMounted(() => {
    controller.ctrlMounted();
});
onUnmounted(() => {
    controller.ctrlDestroy();
})
</script>